home *** CD-ROM | disk | FTP | other *** search
- Path: keats.ugrad.cs.ubc.ca!not-for-mail
- From: c2a192@ugrad.cs.ubc.ca (Kazimir Kylheku)
- Newsgroups: comp.lang.ada,comp.lang.c,comp.lang.c++
- Subject: Re: C/C++ knocks the crap out of Ada
- Date: 7 Mar 1996 14:44:19 -0800
- Organization: Computer Science, University of B.C., Vancouver, B.C., Canada
- Message-ID: <4hnos3INNqkq@keats.ugrad.cs.ubc.ca>
- References: <00001a73+00002504@msn.com> <4h5hgj$vpd@tomquartz.niestu.com> <4h7jskINNnph@anvil.ugrad.cs.ubc.ca> <313EDF38.61C1@lfwc.lockheed.com>
- NNTP-Posting-Host: keats.ugrad.cs.ubc.ca
-
- In article <313EDF38.61C1@lfwc.lockheed.com>,
- Ken Garlington <GarlingtonKE@lfwc.lockheed.com> wrote:
- >Kazimir Kylheku wrote:
- >>
- >> This is false. There are compilers which offer range checking. In a situation
- >> where safety-critical software is designed, such a compiler should be used.
- >
- >I thought you were arguing the merits of two languages. Does the C _language_
- >standard define the syntax and sematics of built-in range checking? Or does
-
- There is no concept of range checking at the syntactic level. Unfortunately,
- the C standard does not mandate a mechanism for enforcing checks for undefined
- behavior such as generating or dereferencing pointer variables that point
- outside of a valid object. The semantics of what constitues a violation are
- pretty clear, but the _enforcement_ is not standardized. I make no pretence
- about how far the standard goes.
-
- I am somewhat cushioned from feeling the full disadvantage of this; but if I
- were to work on a PC platform with some Borland C compiler, I would probably be
- ripping my hair out. On the platforms that I use for most of my programming, I
- have a whole arsenal of all kinds of freeware tools that are generally
- portable. For example, if a program of mine were suffering from a corrupt heap,
- I could use ElectricFence on nearly any UNIX platform to find the problem. If I
- were working with Think C on a Mac, I could not use ElectricFence, because the
- system has no mprotect() nor mmap() system calls.
-
- >"language" in your lexicon include a particular C compiler, with all the add-on
- >tools that one could buy to get it to behave closer to a _standard_ Ada
- >implementation? This is the classic non-argument with regard to languages - that
-
- No. In my lexicon, the morphological compound "programming language", is
- clearly distinct from "implementation" or "compiler".
-
- >a language can be "fixed up" with enough non-standard tools to do what another
- >language has standardized. It's probably true, but it's not a fair _language_
- >comparison.
-
- Ada does incorporate the features of a lot of these tools into its standard.
- But are you saying that there are no add-on, platform-dependent products for
- Ada that extend the capabilities further where needed?
- --
-
-